Streaming video has been introduced in which video, typically in an MPEG format, is “streamed” in packets from a source such as an Internet site to a receiver such as a user's computer. The video is played as it is being received. Because streaming video networks can experience packet delivery jitter, meaning that the rate at which the packets is received can vary, packets ordinarily are buffered at a receiver until a sufficient number of packets have arrived to permit decoding and playing the packets in a relatively smooth, glitch-free manner.
As recognized herein, this buffering of packets causes an undesirable delay in presentation at the start of the stream, as presentation is held in abeyance until sufficient packets exist in the buffer to more or less ensure a glitch-free, smooth decode and play process. The present invention understands that simply giving a user the option of establishing a relatively low amount of data that must be present in the buffer before presentation commences, while increasing system responsiveness, also increases the risk of glitches during display, since the buffer can empty during play in the presence of network latency relatively sooner than it otherwise would. In other words, allowing a user to make the responsiveness/glitch-free tradeoff, and then maintaining the user-defined buffer amount for all subsequent streaming operations until such time as the user might alter it, leads to less than optimum results. Having made these critical observations, the invention herein is provided.